#ifndef BADPACKET_MSGS_H
#define BADPACKET_MSGS_H

#include "lib.h"

enum SeverityLevels
{
	SEVERITY_HIGH=100,
	SEVERITY_MEDIUM=50,
	SEVERITY_LOW=0,
};

struct BadPacketMessage
{
	uint8	severity;
	char*	message;
};

static BadPacketMessage	sBadPacketMessages[] =
{
	{ SEVERITY_HIGH, "Connection::getResponse: Unkown message type" },
	{ SEVERITY_HIGH, "Trying to log into the wrong casino" },
	{ SEVERITY_HIGH, "Trying to preform action when not logged on" },
	{ SEVERITY_HIGH, "Trying to preform action when game not in progress" },
	{ SEVERITY_HIGH, "Trying to deal when not logged on" },
	{ SEVERITY_HIGH, "Trying to hold when not logged on" },
	{ SEVERITY_HIGH, "Trying to bet when not logged on" },
	{ SEVERITY_HIGH, "Trying to spin when not logged on" },
	{ SEVERITY_HIGH, "Trying to hit when game not in progress" },
	{ SEVERITY_HIGH, "Trying to hold when game not in progress" },
	{ SEVERITY_HIGH, "Trying to stand when game not in progres" },
	{ SEVERITY_HIGH, "Trying to split when game not in progress" },
	{ SEVERITY_HIGH, "Trying to double down when game not in progress" },
	{ SEVERITY_HIGH, "Trying to double down deny when game not in progress" },
	{ SEVERITY_HIGH, "Trying to double down deal when game not in progress" },
	{ SEVERITY_HIGH, "Trying to double down draw when game not in progress" },
	{ SEVERITY_HIGH, "Trying to surrender when game not in progress" },
	{ SEVERITY_HIGH, "Trying to buy insurance when game not in progress" },
	{ SEVERITY_HIGH, "Trying to roll when not logged on" },
	{ SEVERITY_HIGH, "Invalid number of bets" },
	{ SEVERITY_HIGH, "Trying to play 0 cards" },
	{ SEVERITY_HIGH, "Trying to play more than 1 cards" },
	{ SEVERITY_HIGH, "Invalid card" },
	{ SEVERITY_HIGH, "Invalid bet" },
	{ SEVERITY_HIGH, "Trying to raise when already raised" },
	{ SEVERITY_HIGH, "Trying to raise when game not in progress" },
	{ SEVERITY_HIGH, "Trying to fold when game not in progress" },
	{ SEVERITY_HIGH, "Trying to spin when game not in progress" },
	{ SEVERITY_HIGH, "Trying to roll when not logged on" },
	{ SEVERITY_HIGH, "Trying to double up deny when not logged on" },
	{ SEVERITY_HIGH, "Trying to double up deal when not logged on" },
	{ SEVERITY_HIGH, "Trying to double up draw when not logged on" },

	{ SEVERITY_MEDIUM, "Account Tracking failed" },

	{ SEVERITY_LOW, "Trying to logon when already logged on" },
	{ SEVERITY_LOW, "Trying to logout when not logged on" },
	{ SEVERITY_LOW, "Trying to create an account while already logged on" },
	{ SEVERITY_LOW, "Invalid hardware info" },
	{ SEVERITY_LOW, "Trying to raise beyond bet limit" },
	{ SEVERITY_LOW, "Invalid game token request" },

	{ SEVERITY_LOW, "Invalid lobby menu message received" },
	{ SEVERITY_LOW, "Invalid sequenced lobby menu messages" },
	{ SEVERITY_HIGH, "Creation of lobby menu failed" },
	{ SEVERITY_HIGH, "Trying to request new message using old format" },
	{ SEVERITY_LOW, "Zero length packet" },
};


enum sBadPacketMessageNums
{
	GETREPONSE_DEFAULT_CASE=0,
	TRY_LOGIN_WRONG_CASINO,
	TRY_ACTION_NOT_LOGGED_ON,
	TRY_ACTION_NO_GAME,
	TRY_DEAL_NOT_LOGGED_ON,
	TRY_HOLD_NOT_LOGGED_ON,
	TRY_BET_NOT_LOGGED_ON,
	TRY_SPIN_NOT_LOGGED_ON,
	TRY_HIT_WHEN_NO_GAME,
	TRY_HOLD_WHEN_NO_GAME,
	TRY_STAND_WHEN_NO_GAME,
	TRY_SPLIT_WHEN_NO_GAME,
	TRY_DBLDOWN_WHEN_NO_GAME,
	TRY_DBLDENY_WHEN_NO_GAME,
	TRY_DBLDEAL_WHEN_NO_GAME,
	TRY_DBLDRAW_WHEN_NO_GAME,
	TRY_SURRENDER_WHEN_NO_GAME,
	TRY_INSURANCE_WHEN_NO_GAME,
	INVALID_NUMBER_BETS,
	TRY_PLAY_ZERO_CARDS,
	TRY_PLAY_MORE_ONE_CARDS,
	INVALID_CARD,
	INVALID_BET,
	TRY_RAISE_ALREADY_RAISE,
	TRY_RAISE_NO_GAME,
	TRY_FOLD_NO_GAME,
	TRY_SPIN_NO_GAME,
	TRY_ROLL_NOT_LOGGED_ON,
	TRY_DBLUPDENY_NOT_LOGGED_ON,
	TRY_DBLUPDEAL_NOT_LOGGED_ON,
	TRY_DBLUPDRAW_NOT_LOGGED_ON,

	ACCT_TRACK_FAIL,

	TRY_LOGON_WHEN_LOGGED_ON,
	TRY_LOGON_WHEN_NOT_LOGGED_ON,
	TRY_CREATE_ACCOUNT_WHEN_LOGGED_ON,
	INVALID_HARDWARE_INFO,
	TRY_RAISE_BEYOND_LIMIT,
	INVALID_TOKEN_REQUEST,

	INVALID_LOBBY_MENU_MESSAGE,
	INVALID_LOBBY_MENU_SEQUENCE,
	TRY_CREATE_LOBBY_MENU,
	TRY_NEWMESSAGE_OLDFORMAT,
	ZERO_LENGTH_PACKET,

	TRY_ZAP_WHEN_NO_GAME,			/// [2013-07-10] Charles. Added for supporting 'Zippit Rackcard'.

	TRY_RELOAD_NOT_LOGGED_ON		// CSN-13423: Reload with a new denomination
};

#endif
